An increasing interest in lossless video compression techniques is observed in areas such as medical image coding and long-term image/video archiving. The desire for high compression lossless/near lossless compression algorithms is driven by economic reasons to keep the file size as small as possible for both transmission and storage while preserving high image/video quality. There is an urgent need for more efficient lossless/near lossless compression algorithms due to the recent introduction of high definition (HD) video to the consumer market. As compared to standard definition (SD) video, more details and textures are expected to be recorded in HD video.
Due to the overwhelming resolution, the transmission and storage requirements constitute a barrier to HD video streaming or broadcasting to end users in real time. However, the application has already been seen in movie theatres where live streaming of sports events or shows has become a steady revenue source for the content production community. From the archival viewpoint, lossless video coding is useful in maintaining contents in the most manageable package possible without discarding any important information.
The latest video coding standard, H.264/advanced video coding (AVC), was developed through the Joint Video Team (JVT) based on standardization of the International Telecommunications Union-Telecommunication (ITU-T) Video Coding Experts Group and the International Organization for Standardization (ISO)/International Electro-technical Commission (IEC) Moving Picture Experts Group. Due to its high-compression performance, H.264/AVC has become a promising video compression standard for a wide range of applications. These include multimedia streaming and video conferencing as described in, for example, Editors' draft revision to ITU-T Rec. H.264|ISO/IEC 14496-10 Advanced Video Coding—in preparation for ITU-T SG 16 AAP Consent, document JVT-AD205.doc, Joint Video Team of ISO/IEC 14496-10AVC, ISO/IEC JTC1/SC29/WG11, and ITU-T Q.6/SG16, February 2009; A. Luthra, G. J. Sullivan, and T. Wiegand, “Introduction to the special issue on the H.264/AVC video coding standard,” IEEE Trans. Circuits Syst. Video Technol., vol. 13, no. 7, pp. 557-559, July 2003; T. Wiegand, G. J. Sullivan, G. Bjontegaard, and A. Luthra, “Overview of the H.264/AVC video coding standard,” IEEE Trans. Circuits Syst. Video Technol., vol. 13, no. 7, pp. 560-576, July 2003; and G. J. Sullivan and T. Wiegand, “Video compression: From concepts to the H.264/AVC standard,” Proc. IEEE, vol. 93, no. 1, pp. 18-31, January 2005. However, the development of the H.264/AVC standard has mainly focussed on lossy coding/compression techniques.
Lured by the growing lossless coding market, H.264/AVC has been developed to provide improved functionality for lossless video coding. H.264/AVC standard includes a so-called pulse-code modulation (PCM) macroblock coding mode, where the values of the original image samples are sent directly without prediction, transform, and quantization. The PCM mode was designed to be simple by imposing a minimum upper bound on the number of bits that can be used to represent a macroblock with sufficient accuracy. But, this aspect also reduced its coding efficiency as described in Y.-L. Lee, K. H. Han, and G. J. Sullivan, “Improved lossless intra-coding for H.264/MPEG-4 AVC,” IEEE Trans. Image Process., vol. 15, no. 9, pp. 2610-2615, September 2006.
After finalizing the first version of the H.264/AVC standard, JVT developed extensions to the original standard known as the fidelity range extensions (FRExt), for example, as described in Draft Text of H.264/AVC Fidelity Range Extensions Amendment to ITU TRec. H.264, document JVT-L047.doc, Joint Video Team of ISO/IEC14496-10 AVC, ISO/IEC JTC1/SC29/WG11, and ITU-T Q.6/SG16, July 2004 and further described in G. J. Sullivan, P. Topiwala, and A. Luthra, “The H.264/AVC standard: Overview and introduction to the fidelity range extensions,” in Proc. SPIE Conf., Special Session Adv. New Emerg. Standard: H.264/AVC, Denver, Colo., August 2004, pp. 454-474. When developing the FRExt amendment, it was decided that a more effective means of lossless coding was desirable for the most demanding applications. Therefore, FRExt also included a transform-bypass lossless mode that employs two main coding processes, prediction and entropy coding, which were not previously used in the PCM macro-block mode, as described in Intra-Lossless Coding and QP Range Selection, document JVTC023.doc, Joint Video Team of ISO/IEC JTC1/SC29/WG11 and ITU-TQ.6/SG16, May 2002. More efficient coding techniques for prediction are still required to further enhance the coding performance for lossless coding.
In the meantime, a new intra-prediction method called sample-wise differential pulse-code modulation (DPCM) was introduced for lossless intra-prediction, see for example, Differential pulse-code modulation (DPCM) Lossless Intra-Coding for Improved 4:4:4 Coding in H.264/MPEG-4 AVC, document JVT-P016.doc, Joint Video Team of ISO/IECJTC1/SC29/WG11 and ITU-T Q.6/SG16, July 2005; and Complexity of the Proposed Lossless Intra, document JVT-Q035r1.doc, Joint Video Team of ISO/IEC JTC1/SC29/WG11 and ITU-T Q.6/SG16, October 2005. DPCM considers the sample next to the one to be predicted a better predictor than a sample in a neighboring block several samples farther away. As a result, sample-wise DPCM can provide better compression performance without incurring a major increase in the computational complexity. It was subsequently adopted as a part of the new draft amendment for the H.264/AVC standard in Draft Text of H.264/AVC Advanced 4:4:4 Profile Amendment to ITUT Rec. H.264|ISO/IEC 14496-10 AVC, document JVT-Q209.doc, Joint Video Team of ISO/IEC JTC1/SC29/WG11 and ITU-T Q.6/SG16, October 2005.
The H.264/AVC standard employs two entropy coders: context-based adaptive variable length coder (CAVLC) as described in Context-Adaptive VLC (CVLC) Coding of Coefficients, document JVTC028.doc, Joint Video Team of ISO/IEC JTC1/SC29/WG11 and ITU-TQ6/SG16m, May 2002; and context-based adaptive binary arithmetic coder (CABAC) as described in D. Marpe, H. Schwarz, T. Wiegand, “Context-based adaptive binary arithmetic coding in the H.264/AVC video compression”, IEEE Trans. Circuits Syst. Video Technol. vol. 13 (no. 7) (2003) 620-636. However, both entropy coding methods were designed to be adapted to the statistical characteristics of residual errors which are quantized transform coefficients. But, in lossless coding, residual errors are the differential pixel values between the original and the predicted pixel values without transform and quantization. The statistical characteristics of residual data for lossy coding and that for lossless video coding are very different. Conventional entropy coding methods used in H.264/AVC do not provide the best coding performance for lossless video coding.
In H.264/AVC intra coding, when given a 4×4 block, 9 modes of intra prediction are used for spatial redundancy reduction as shown in FIG. 1. This is also described in Y. W. Huang, et al, “Analysis, Fast Algorithm, and VLSI Architecture Design for H.264/AVC Intra Frame Coder,” IEEE Trans. Circuits Syst. Video Technol., vol. 15, no. 3, March 2005, pp. 378-401. FIG. 2(a) illustrates an example of Integer Discrete Cosine Transform (ICT) and quantization for an intra-predicted error block of Mobile sequence explained in http://media.xiph.org/video/derf/. FIG. 2(b) is an example of the Zigzag Scanning order. For lossy coding, ICT and quantization are first applied to the input intra prediction residual block, which is followed by zigzag scan, whose scanning order is shown in FIG. 2(b). The scanned coefficients are sent to the entropy coder(s) for statistical redundancy removal.
It is noted that after ICT, the high magnitude coefficients tend to concentrate in the top-left of the block. After quantization, the top-left part of the block will have higher probability to have non-zero coefficients compared with bottom-right part of the block as shown in FIG. 2(a). This means that after the zigzag scan, the early part is more likely to have non-zero coefficients compared with the late part. Since the coefficients in the bottom-right corner tend to be small, after quantization, they are more likely to be quantized to consecutive zeros; the larger the quantization step is, the more zeros will be generated. The entropy coders in H.264/AVC are designed to exploit these statistical characteristics.
However, in lossless coding, the data sent to entropy coders are residual errors, which are the differential pixel values between the original and the predicted pixel values without ICT (transform) and quantization. Residual data differs from quantized coefficients in two aspects:                1) the residual data has fewer zero entries; and        2) all the positions in the prediction residual block have almost the same probability to have non-zero entries.        
Conventional entropy coding methods in H.264/AVC simply cannot provide the best coding performance for lossless video coding. This severely limits the use of real-time lossless/near lossless video transmission and storage.
Applications for real-time lossless or near lossless video transmission and storage may include, for example, HD streaming, HD telepresence (requiring at least 24 Mbps bandwidth with 50 millisecond latency), remote surgery applications (typically requiring 10 Mbps and 1 millisecond latency), medical imaging and back-ups (hospitals storing 500,000 images per year may require 120 TB storage including back-up). However, most communication networks/storage systems cannot meet these requirements using existing lossless video coding technology. Even a simple 8% improvement in current compression rates can result in considerable savings in terms of bandwidth and storage requirements for lossless/near lossless video transmission and storage.
There is an increasing desire for higher lossless video compression rates.